import math
'''
    作者：fred
    功能：一元二次方程
    version:1.0
    日期：11/03/2018

'''
# 一元二次方程
def quadratic(a, b, c):
	t = math.sqrt(pow(b, 2) - 4 * a * c)
	if (pow(b, 2) - 4 * a * c) > 0:
		return (-b + t)/(2* a), (-b - t)/(2 *a)
	elif (pow(b, 2) - 4 * a * c) == 0:
		return -b/(2* a)
	else:
		return None

print(quadratic(2,3,0))


def my_abs(x):
	# 参数检查
    if not isinstance(x, (int, float)):
        raise TypeError('bad operand type')
    if x >= 0:
        return x
    else:
        return -x


# 返回两个值. 返回tuple
def move(x, y, step, anlge=0):
	nx = x + step * math.cos(anlge)
	ny = y + step * math.cos(anlge)
	return nx, ny


'''
函数的参数：
	顺序：必选参数、默认参数、可变参数、命名关键字参数和关键字参数
	位置参数：
	默认参数：
	可变参数： *nums。可变参数允许你传入0个或任意个参数，这些可变参数在函数调用时自动组装为一个tuple
	关键字参数：关键字参数允许你传入0个或任意个含参数名的参数，这些关键字参数在函数内部自动组装为一个dict
	命名关键字参数：需要一个特殊分隔符*，*后面的参数被视为命名关键字参数
'''